package com.liuyi.netty.im.server.handle.storage;

import io.netty.channel.Channel;

import java.util.List;

/**
 * 用户在线储存 （只要连接过的都会被储存下来）
 */
public interface UserStorage {

    /**
     * 查询用户
     *
     * @param userId 用户id
     * @param device 设备
     */
    User getUser(String userId, String device);

    /**
     * 查询用户列表
     *
     * @param userId 用户id
     */
    List<User> listUser(String userId);

    /**
     * 用户在线
     */
    User onLine(Channel channel,String sign, String userId, String device);

    /**
     * 标记下线
     */
    User offLine(String userId, String device);
}
